Ext.onReady(function() {

	var workTypeStore = Ext.create('Ext.data.Store', {
				fields : ['display', 'value'],
				data : [{
							"display" : "飞巡作业",
							"value" : "1"
						}, {
							"display" : "调试作业",
							"value" : "2"
						}, {
							"display" : "充电作业",
							"value" : "3"
						}]
			});

	var workType = Ext.create('Ext.form.ComboBox', {
				fieldLabel : '作业类型',
				labelWidth: 60,
				store : workTypeStore,
				queryMode : 'local',
				editable : false,
				displayField : 'display',
				valueField : 'value',
				listeners : {
					afterRender : function(combo) {
						var firstValue = combo.getStore().first().get("value");
						combo.setValue(firstValue);
					}
				}
			});
	var tjfsStore = Ext.create('Ext.data.Store', {
				fields : ['display', 'value'],
				data : [{
							"display" : "周",
							"value" : "1"
						}, {
							"display" : "月",
							"value" : "2"
						}, {
							"display" : "季度",
							"value" : "3"
						}, {
							"display" : "年份",
							"value" : "4"
						}]
			});

	var tjfs = Ext.create('Ext.form.ComboBox', {
				fieldLabel : '统计方式',
				margin : '0 5',
				editable : false,
				store : tjfsStore,
				queryMode : 'local',
				displayField : 'display',
				valueField : 'value',
				listeners : {
					afterRender : function(combo) {
						var firstValue = combo.getStore().first().get("value");
						combo.setValue(firstValue);
					}
				}
			});
	var userStore = Ext.create('Ext.data.Store', {
				fields : ["Id", "Username", 'Name'],
				proxy : {
					type : 'ajax',
					url : '/user/all',
					reader : {
						type : 'json',
						root : 'data.rows'
					}
				},
				autoLoad : true
			});
	var recipientor = Ext.create("Ext.form.ComboBox", {
				fieldLabel : '负责人',
				labelWidth : 60,
				margin: '0 5',
				editable : false,
				width : 230,
				id : 'User',
				store : userStore,
				queryMode : 'local',
				valueField : 'Id',
				tpl : Ext.create(
								'Ext.XTemplate',
								'<tpl for=".">',
								'<div class="x-boundlist-item">{Username}({Name})</div>',
								'</tpl>'),
				displayTpl : Ext.create('Ext.XTemplate', '<tpl for=".">',
						'{Username}({Name})', '</tpl>')
			});

	var searchPanel = Ext.create('Ext.container.Container', {
				margin : '5 5',
				dock : 'top',
				items : [{
							xtype : 'container',
							layout : 'hbox',
							items : [workType, recipientor/*, tjfs*/]
						}, {
							xtype : 'container',
							margin : '5 0',
							layout : 'hbox',
							items : [{
										xtype : 'datefield',
										labelWidth: 60,
										fieldLabel : '开始时间',
										format : 'Y-m-d',
										id : 'startTime',
										maxValue : new Date()
									}, {
										xtype : 'datefield',
										margin : '0 5',
										labelWidth: 60,
										fieldLabel : '结束时间',
										id : 'endTime',
										format : 'Y-m-d'
									},{
										xtype : 'container',
										layout : 'hbox',
										items : [ {
													xtype: 'button',
													text : '搜索',
													width : 60,
													listeners: {
														click: function(){
															var typeId = workType.getValue();
															var startTime = Ext.getCmp('startTime').getValue();
															var endTime = Ext.getCmp('endTime').getValue();
															var userId = recipientor.getValue();
															var params = {
																workType : typeId,
																tjType : 1
															};
															if(startTime != null){
																params.startTime = Ext.Date.format(startTime, 'Y-m-d');
															}
															if(endTime != null){
																params.endTime = Ext.Date.format(endTime, 'Y-m-d');
															}
															if(userId != null){
																params.userId = userId;
															}
															store.proxy.url = '/work/search';
															store.proxy.extraParams = params;
															store.reload();
														}
													}
												}]
									}]
						}]

			});
	
	var store = Ext.create('Ext.data.Store', {
				fields : ['Id', 'Name', 'Worktime', {
							name : 'Worker',
							type : 'object'
						},{
							name: 'Worktype',
							type: 'object'
						},{
							name: 'DeviceRecipient',
							type: 'object'
						}],
				autoLoad : true,
				pageSize: 25,
				proxy : {
					type : 'ajax',
					url : '/work/all',
					reader : {
						type : 'json',
						root : 'data.rows',
						totalProperty: 'data.total'
					}
				}
			});

	var grid = Ext.create('Ext.grid.Panel', {
				margin : '5 5',
				store: store,
				id : 'zyGrid',
				columns : [{
							text : '序号',
							xtype : 'rownumberer',
							width : 40,
							sortable : false
						}, {
							text : '作业名称',
							flex : 1,
							dataIndex : 'Name'
						}, {
							text : '作业类型',
							dataIndex : 'Worktype',
							flex : 1,
							renderer: function(v){
								return v.Name;
							}
						}, {
							text : '部门',
							dataIndex : 'DeviceRecipient',
							flex : 1,
							renderer: function(v){
								return v.Department.Name
							}
						}, {
							text : '班组',
							dataIndex : 'DeviceRecipient',
							flex : 1,
							renderer: function(v){
								return v.Group.Name
							}
						}, {
							text : '负责人',
							dataIndex : 'Worker',
							flex : 1,
							renderer: function(v){
								return v.Username + '(' + v.Name + ')';
							}
						},{
							text: '创建时间',
							dataIndex: 'Worktime',
							width: 200
						}],
						bbar : Ext.create('Ext.PagingToolbar', {
							store : store,
							border: false,
							displayInfo : true,
							displayMsg : '显示{0} - {1} / 总数 {2}',
							emptyMsg : "没数据"
						})
			});
	var panel = Ext.create("Ext.panel.Panel", {
				border : false,
				layout : 'fit',
				bodyBorder : false,
				dockedItems : [searchPanel],
				items : [grid]
			});
	Ext.create('Ext.Viewport', {
				layout : 'fit',
				style : 'background:none;background-color:white;',
				items : [panel]
			});
});